gdk_event_get_display accesses event->any.window, so don't
free that window first thing.
g_return_if_fail (event != NULL);
- if (event->any.window)
- g_object_unref (event->any.window);
-
switch (event->any.type)
{
case GDK_KEY_PRESS:
if (display)
_gdk_display_event_data_free (display, event);
+ if (event->any.window)
+ g_object_unref (event->any.window);
+
g_hash_table_remove (event_hash, event);
g_slice_free (GdkEventPrivate, (GdkEventPrivate*) event);
}